package com.gpframework.module.manufacture.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;
import com.gpframework.common.annotation.Excel;
import java.util.Date;
import java.math.BigDecimal;

/**
 * @ClassName GpProductionApplicationVo
 * @Author gpframework
 * @Date 2023-12-04
 * @Version 1.0.0
 * @Description 缺货报库存申请Vo对象
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
public class GpProductionApplicationVo {
    private static final long serialVersionUID = 1L;

    /** 主键id */
    @ApiModelProperty("主键id")
    private Long id;

    /** 品牌id */
    @ApiModelProperty("品牌id")
    private String brandId;

    /** 品牌名称 */
    @ApiModelProperty("品牌名称")
    private String brandName;

    /** 需求单号 */
    @ApiModelProperty("需求单号")
    private String sn;

    /** 申请人id */
    @ApiModelProperty("申请人id")
    private Long applicantId;

    /** 申请人名称 */
    @Excel(name = "申请人", sort = 20)
    @ApiModelProperty("申请人名称")
    private String applicantName;

    /** 类型： 1染厂需求 2加工需求 3采购需求 */
    @Excel(name = "类型", sort = 10, dictType = "out_of_stock_type")
    @ApiModelProperty("类型： 1染厂需求 2加工需求 3采购需求")
    private String type;

    /** 产品名 */
    @Excel(name = "品名", sort = 40)
    @ApiModelProperty("产品名")
    private String productName;

    /** 颜色 */
    @Excel(name = "颜色", sort = 50)
    @ApiModelProperty("颜色")
    private String colour;

    /** 申请数量 */
    @Excel(name = "库存数据", sort = 60)
    @ApiModelProperty("申请数量")
    private Integer quantity;

    /** 审核状态： 0待审核 1好的 2已安排 3已回货 4暂不安排 */
    @Excel(name = "阅读状态", sort = 80, dictType = "review_status")
    @ApiModelProperty("审核状态： 0待审核 1好的 2已安排 3已回货 4暂不安排")
    private String auditStatus;

    /** 审核人id */
    @ApiModelProperty("审核人id")
    private Long auditId;

    /** 审核人名称 */
    @Excel(name = "操作人", sort = 90)
    @ApiModelProperty("审核人名称")
    private String auditName;

    /** 审核时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("审核时间")
    private Date auditTime;

    /** 审核备注 */
    @ApiModelProperty("审核备注")
    private String auditRemarks;

    /** 排序 */
    @ApiModelProperty("排序")
    private Integer sort;

    /** 备注 */
    @Excel(name = "备注", sort = 70)
    @ApiModelProperty("备注")
    private String remarks;

    /** 创建者 */
    @ApiModelProperty("创建者")
    private String createBy;

    /** 创建时间 */
    @Excel(name = "申请日期", sort = 30, dateFormat = "MM月dd日")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("创建时间")
    private Date createTime;

    /** 更新者 */
    @ApiModelProperty("更新者")
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("更新时间")
    private Date updateTime;

    /** 做货明细表id */
    @ApiModelProperty("做货明细表id")
    private Long productionDetailsId;

    /** 操作人名称 */
    @ApiModelProperty("操作人名称")
    private String operatorName;
    /** 操作人编号 */
    @ApiModelProperty("操作人编号")
    private String operatorNum;

}
